package com.ruanxie.json.deserializer;


import com.alibaba.fastjson.parser.DefaultJSONParser;
import com.alibaba.fastjson.parser.deserializer.ObjectDeserializer;
import com.alibaba.fastjson.serializer.JSONSerializer;
import com.alibaba.fastjson.serializer.ObjectSerializer;

import java.io.IOException;
import java.lang.reflect.Type;

public class IntegerZeroDeserializer implements ObjectDeserializer {


    @Override
    public Integer deserialze(DefaultJSONParser defaultJSONParser, Type type, Object o) {
        Object value = defaultJSONParser.parse(o);
        // 如果解析结果为 null 或空字符串，返回 0
        if (value == null || value.toString().isEmpty()) {
            return 0;
        }
        // 尝试将 value 转换为 Integer
        try {
            return Integer.parseInt(value.toString());
        } catch (NumberFormatException e) {
            return 0; // 如果转换失败，返回 0
        }
    }

    @Override
    public int getFastMatchToken() {
        return 0;
    }
}